Compuerta OR-EX o XOR
Es OR EXclusiva en este caso con dos entradas (puede tener
más) y lo que hará con ellas será una suma
lógica
entre a por b invertida y a invertida por
b.*Al ser O Exclusiva su salida será
1 si una y sólo una de sus entradas es
1*
Estas serían básicamente las
compuertas más sencillas.
Compuertas
Lógicas Combinadas
Al agregar una compuerta NOT a cada una de las compuertas
anteriores los resultados de sus respectivas tablas de verdad se
invierten, y dan origen a tres nuevas compuertas llamadas NAND,
NOR y NOR-EX. Veamos ahora como son y cuál es el
símbolo que las representa…
Compuerta NAND
Responde a la inversión del producto
lógico de sus entradas, en su representación
simbólica se reemplaza la compuerta NOT por un
círculo a la salida de la compuerta AND.
Compuerta NOR
El resultado que se obtiene a la salida de esta
compuerta resulta de la inversión de la operación
lógica o inclusiva es como un no a y/o b.
Igual que antes, solo agregas un círculo a la compuerta OR
y ya tienes una NOR.
Compuerta NOR-EX
Es simplemente la inversión de la
compuerta OR-EX, los resultados se pueden apreciar en la tabla de
verdad, que bien podrías compararla con la anterior y
notar la diferencia, el símbolo que la representa lo
tienes en el siguiente gráfico.
Buffer's
En realidad no realiza ninguna operación
lógica, su finalidad es amplificar un poco la señal
(o refrescarla si se puede decir). Como puedes ver en el
siguiente gráfico la señal de salida es la misma
que de entrada.
Álgebra
Booleana y circuitos electrónicos
La relación que existe entre la lógica booleana
y los sistemas de
cómputo es fuerte, de hecho se da una relación uno
a uno entre las funciones
booleanas y los circuitos
electrónicos de compuertas digitales. Para cada función
booleana es posible diseñar un circuito electrónico
y viceversa, como las funciones booleanas solo requieren de los
operadores AND, OR y NOT podemos construir nuestros circuitos
utilizando exclusivamente éstos operadores utilizando las
compuertas lógicas homónimasUn hecho interesante es
que es posible implementar cualquier circuito electrónico
utilizando una sola compuerta, ésta es la compuerta
NANDPara probar que podemos construir cualquier función
booleana utilizando sólo compuertas NAND, necesitamos
demostrar cómo construir un inversor (NOT), una compuerta
AND y una compuerta OR a partir de una compuerta NAND, ya que
como se dijo, es posible implementar cualquier función
booleana utilizando sólo los operadores booleanos AND, OR
y NOT. Para construir un inversor simplemente conectamos juntas
las dos entradas de una compuerta NAND. Una vez que tenemos un
inversor, construir una compuerta AND es fácil,
sólo invertimos la salida de una compuerta NAND,
después de todo, NOT ( NOT (A AND B)) es equivalente a A
AND B. Por supuesto, se requieren dos compuertas NAND para
construir una sola compuerta AND, nadie ha dicho que los
circuitos implementados sólo utilizando compuertas NAND
sean lo óptimo, solo se ha dicho que es posible hacerlo.
La otra compuerta que necesitamos sintetizar es la compuerta
lógica OR, ésto es sencillo si utilizamos los
teoremas de DeMorgan, que en síntesis
se logra en tres pasos, primero se reemplazan todos los
"·" por "+" después se invierte cada
literal y por último se niega la totalidad de la
expresión:
A OR BA AND B…………………..Primer paso
para aplicar el teorema de DeMorganA' AND
B'…………………Segundo paso para aplicar el teorema de
DeMorgan(A' AND B')'………………Tercer paso para aplicar el
teorema de DeMorgan(A' AND B')' = A' NAND
B'…..Definición de OR utilizando NAND
Si se tiene la necesidad de construir diferentes compuertas de
la manera descrita, bien hay dos buenas razones, la primera es
que las compuertas NAND son las más económicas y en
segundo lugar es preferible construir circuitos complejos
utilizando los mismos bloques básicos. Observe que es
posible construir cualquier circuito lógico utilizando
sólo compuertas de tipo NOR (NOR = NOT(A OR B)). La
correspondencia entre la lógica NAND y la NOR es ortogonal
entre la correspondencia de sus formas canónicas. Mientras
que la lógica NOR es útil en muchos circuitos, la
mayoría de los diseñadores utilizan lógica
NAND.
Circuitos
Combinacionales
Un circuito combinacional es un sistema que
contiene operaciones
booleanas básicas (AND, OR, NOT), algunas entradas y un
juego de
salidas, como cada salida corresponde a una función
lógica individual, un circuito combinacional a menudo
implementa varias funciones booleanas diferentes, es muy
importante recordar éste hecho, cada salida representa una
función booleana diferente.
Un ejemplo común de un circuito combinacional es el
decodificador de siete segmentos, se trata de un circuito que
acepta cuatro entradas y determina cuál de los siete
segmentos se deben iluminar para representar la respectiva
entrada, de acuerdo con lo dicho en el párrafo
anterior, se deben implementar siete funciones de salida
diferentes, una para cada segmento. Las cuatro entradas para cada
una de éstas funciones booleanas son los cuatro bits de un
número binario en el rango de 0 a 9. Sea D el bit de alto
orden de éste número y A el bit de bajo orden, cada
función lógica debe producir un uno (para el
segmento encendido) para una entrada dada si tal segmento en
particular debe ser iluminado, por ejemplo, el segmento e
debe iluminarse para los valores
0000, 0010, 0110 y 1000.
En la siguiente tabla se puede ver qué segmentos deben
iluminarse de acuerdo al valor de
entrada, tenga en cuenta que sólo se están
representando valores en el
rango de 0 a 9, los decodificadores para las pantallas de siete
segmentos comerciales tienen capacidad para desplegar valores
adicionales que corresponden a las letras A a la F para
representaciones hexadecimales, sin embargo la mecánica para iluminar los respectivos
segmentos es similar a la aquí representada para los
valores numéricos.
0 | a | b | c | d | e | f |
|
1 |
| b | c |
|
|
|
|
2 | a | b |
| d | e |
| g |
3 | a | b | c | d |
|
| g |
4 |
| b | c |
|
| f | g |
5 | a |
| c | d |
| f | g |
6 |
|
| c | d | e | f | g |
7 | a | b | c |
|
|
|
|
8 | a | b | c | d | e | f | g |
9 | a | b | c |
|
| f | g |
Los circuitos combinacionales son la base de
muchos componentes en un sistema de cómputo básico,
se puede construir circuitos para sumar, restar, comparar,
multiplicar, dividir y muchas otras aplicaciones más.
Circuitos
Secuenciales
Un problema con la lógica secuencial es su falta de
"memoria". En
teoría,
todas las funciones de salida en un circuito combinacional
dependen del estado actual
de los valores de entrada, cualquier cambio en los
valores de entrada se refleja (después de un intervalo de
tiempo llamado
retardo de propagación) en las salidas. Desafortunadamente
las computadoras
requieren de la habilidad para "recordar" el resultado de
cálculos pasados. Éste es el dominio de la
lógica secuencial. Una celda de memoria es un circuito
electrónico que recuerda un valor de entrada
después que dicho valor ha desaparecido. La unidad de
memoria más básica es el flip-flop Set/Reset.
Aunque recordar un bit sencillo es importante, la mayoría
de los sistemas de cómputo requieren recordar un grupo de bits,
ésto se logra combinando varios flip-flop en paralelo, una
conexión de éste tipo recibe el nombre de registro. A
partir de aquí es posible implementar diferentes circuitos
como registros de
corrimiento y contadores, éstos últimos
también los conocemos como circuitos de reloj. Con los
elementos mencionados es posible construir un microprocesador
completo.
Relación entre
la lógica combinacional y secuencial con la
programación
En ésta lección hemos dado una repasada muy
básica a los elementos que forman la base de los modernos
sistemas de cómputo, en la sección dedicada al
diseño
electrónico estudiaremos a profundidad los conceptos
aquí presentados, pero para aquellos que están
más interesados en el aspecto programático podemos
decir que con los elementos vistos en ésta lección
es posible implementar máquinas
de estado, sin embargo la moraleja de ésta lección
es muy importante: cualquier algoritmo que
podamos implementar en software, lo podemos a su
vez implementar directamente en hardware. Ésto
sugiere que la lógica booleana es la base computacional en
los modernos sistemas de cómputo actuales. Cualquier
programa que
Usted escriba, independientemente del lenguaje que
utilice, sea éste de alto ó bajo nivel, se puede
especificar como una secuencia de ecuaciones
booleanas.
Un hecho igualmente interesante es el punto de vista opuesto,
es posible implementar cualquier función de hardware
directamente en software, en la actualidad ésta es la
función principal del lenguaje
ensamblador y otros con capacidad de trabajar directamente en
hardware, como el C y el C++. Las consecuencias de éste
fenómeno apenas se están explotando, se infiere la
existencia de un futuro muy prometedor para el profesional de la
programación, especialmente aquellos
dedicados a los sistemas incrustados (embedded systems), los
microcontroladores y los profesionales dedicados a
la Programación
Orientada a Objetos. Para tener éxito
en éstos campos de la
investigación es fundamental comprender las funciones
booleanas y la manera de implementarlas en software. Aún y
cuando Usted no desee trabajar en hardware, es importante conocer
las funciones booleanas ya que muchos lenguajes de alto nivel
procesan expresiones booleanas, como es el caso de los enunciados
if-then ó los bucles while.
Los Teoremas
Básicos Del Algebra Booleana
Los Teoremas Básicos del álgebra
Booleana son:
TEOREMA 1 Ley DistributivaA (B+C) =
AB+AC
A | B | C | B+C | AB | AC | AB+AC | A (B+C) | |||||||||
0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | |||||||||
0 | 0 | 1 | 1 | 0 | 0 | 0 | 0 | |||||||||
0 | 1 | 0 | 1 | 0 | 0 | 0 | 0 | |||||||||
0 | 1 | 1 | 1 | 0 | 0 | 0 | 0 | |||||||||
1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | |||||||||
1 | 0 | 1 | 1 | 0 | 1 | 1 | 1 | |||||||||
1 | 1 | 0 | 1 | 1 | 0 | 1 | 1 | |||||||||
1 | 1 | 1 | 1 | 1 | 1 | 1 | 1 |
TEOREMA 2
A+A = A
AA = A
A | A | A+A | |
0 | 0 | 0 | |
1 | 1 | 1 | |
A | A | AA | |
0 | 0 | 0 | |
1 | 1 | 1 |
TEOREMA 3
Redundancia
A+AB = A
A | B | AB | X | |
0 | 0 | 0 | 0 | |
0 | 1 | 0 | 0 | |
1 | 0 | 0 | 1 | |
1 | 1 | 1 | 1 |
A (A+B) = A
A | B | A+B | X | |
0 | 0 | 0 | 0 | |
0 | 1 | 1 | 0 | |
1 | 0 | 1 | 0 | |
1 | 1 | 1 | 1 |
TEOREMA 4
0+A = A
Equivalente a una compuerta OR con una de
sus terminales conectada a tierra
A | B=0 | X | |
0 | 0 | 0 | |
1 | 0 | 1 |
1A = A
Equivalente a una compuerta AND con una de sus
terminales conectada a 1
A | B=1 | X | |
0 | 1 | 0 | |
1 | 1 | 1 |
1+A = 1
A | B=1 | X | |
0 | 1 | 1 | |
1 | 1 | 1 |
0A = 0
A | B=0 | X | |
0 | 0 | 0 | |
1 | 0 | 0 |
Lógica y
matemáticas
Desde un punto de vista realista, la lógica es una
disciplina
teórica y filosófica, separada de las matemáticas. El objetivo de la
lógica es el estudio de las propiedades y relaciones
lógicas entre los objetos lógicos (proposiciones,
modelos,
entidades.). Como todas estas propiedades son independientes de
los sistemas usados para su estudio, se concluye que la
lógica filosófica es una ciencia
teórica. La incompatibilidad, verdad, falsedad, o
equivalencia son denominadas como propiedades o relaciones
básicas.
También existen otra serie de propiedades y relaciones
derivadas, que se
dividen en tres grandes grupos:
teoría de modelos (estudia las relaciones básicas
fundamentales entre los enunciados de una teoría),
teoría de pruebas
(estudio matemático de la derivación) y
teoría de la recursión que estudia la
computabilidad de las derivaciones jugando un papel esencial
dentro de la lógica formal.
¿Qué es la lógica
matemática?
Por lógica matemática
pueden entenderse tres opciones distintas:
1.- Lógica matemática como lógica
matematizada, es decir, que usa métodos y
herramientas
matemáticas.
2.- Lógica matemática como la parte
matemática dentro de la lógica. En este sentido, es
más una lógica de las matemáticas, es decir,
el estudio de las relaciones, propiedades de teorías, pruebas y conceptos matemáticos
3.- Lógica matemática como la lógica de
las matemáticas, es decir como la parte que estudia y
analiza los diferentes razonamientos y argumentaciones que se dan
dentro de las matemáticas. Es en este sentido una rama
más de las matemáticas.
Normalmente, en el primer sentido explicado, se produce una
fuerte confusión entre la lógica y las
matemáticas, debido a que en lógica formal se usa
un método
matemático que hace difícil discernir entre ciencia
(lógica) y método (matemáticas).
También, hay que saber distinguir entre los sistemas
lógicos formales que son entidades matemáticas
complejas y las teorías lógicas. El objetivo de los
sistemas lógicos formales es construir una correspondencia
entre propiedades lógicas y matemáticas. La
lógica matemática en el primer sentido contempla
las tres acepciones en conjunto.
Ahondando en las
diferencias entre lógica y matemática.
La identidad de
los objetos matemáticos están completamente
determinadas por las propiedades de las que se le pueden predicar
en el lenguaje
puramente teórico y por su aplicabilidad según la
lógica del mismo. Si la lógica fuera
matemática, dos objetos lógicos serían
lógicamente equivalentes, sin embargo, estas propiedades
lógicas no están completamente determinadas por la
herramienta formal con la que las estudiamos.
Álgebra de Boole, rama de las
matemáticas con propiedades y reglas similares, aunque
diferentes, al álgebra ordinaria. Es útil, entre
otras cosas, para la lógica y para la teoría de
conjuntos.
Formalmente, el álgebra de Boole es un
sistema matemático compuesto por un conjunto de elementos,
llamado habitualmente B, junto a dos operaciones
binarias, que se pueden escribir con los símbolos Estas operaciones están definidas en el
conjunto B y satisfacen los siguientes axiomas:
1. Ambas operaciones son asociativas.
Esto es, cualesquiera que sean los elementos x,
y, z de B, se cumple que
2. Ambas operaciones son conmutativas.
Esto es, para cualquier pareja de elementos x,
y del conjunto B, se cumple que
3. Cada una de las operaciones es distributiva con
respecto a la otra. Esto es, para tres elementos cualesquiera
x, y, z del conjunto B, se cumple que
4. En el conjunto B existe un
elemento neutro bien definido para cada una de las
operaciones Estos elementos se representan
habitualmente con los símbolos 0 y 1, son distintos y
tienen la propiedad de que
para cualquier elemento x del conjunto
B.
5. A cada elemento x del
conjunto B le corresponde otro elemento llamado
complementario de x, que normalmente se representa
con el símbolo x'. El elemento x'
cumple las siguientes propiedades con respecto a las dos
operaciones
Esta estructura
recibe este nombre en honor al matemático inglés
George Boole, que la describió en 1854 en su obra
Investigación sobre las leyes del
pensamiento.
Veamos un ejemplo de un álgebra de Boole. Sea
X un conjunto de elementos y sea P(X) el
conjunto de todos los posibles subconjuntos del conjunto
X. P(X) se denomina normalmente conjunto de las
partes del conjunto X. P(X) junto con la
unión y la
intersección de conjuntos forma un álgebra de Boole.
En realidad, cualquier álgebra de Boole se puede
representar como un álgebra de conjuntos
(véase Teoría de conjuntos).
Dada la simetría de los axiomas con respecto a las dos
operaciones y sus respectivos elementos neutros, se puede
demostrar el llamado principio de dualidad, que afirma que
cualquier proposición algebraica verdadera deducible a
partir de los axiomas del álgebra de Boole es
también verdadera si se intercambian las operaciones
y los elementos
neutros 1 y 0 en la proposición. Dos de los muchos
teoremas que se pueden deducir a partir de los axiomas del
álgebra de Boole y que son de gran importancia son las
leyes de Morgan, que dicen que
Los elementos que forman el conjunto B de un
álgebra de Boole pueden ser objetos abstractos o cosas
concretas como números, proposiciones, conjuntos o
redes
eléctricas. En el desarrollo
original de Boole, los elementos de su álgebra eran una
colección de proposiciones, o simplemente oraciones
gramaticales con la propiedad de
ser verdaderas o falsas.
En esta álgebra de Boole, el complementario de un
elemento o proposición es simplemente la negación
de la proposición.
Un álgebra de Boole de proposiciones y una de conjuntos
están muy relacionadas. Por ejemplo, sea p la
afirmación 'la bola es azul', y sea P el conjunto
de todos los elementos para los que la proposición es
verdadera, es decir, el conjunto de las bolas azules. P
es el conjunto verdad de la proposición p.
El álgebra de Boole tiene muchas aplicaciones
prácticas en las ciencias
físicas, especialmente en la informática y en la electrónica. A continuación se
expone un ejemplo del uso del álgebra de Boole en la
teoría de circuitos electrónicos. Sean p y
q dos proposiciones, es decir, oraciones afirmativas que
son o verdaderas o falsas (pero no las dos cosas al mismo
tiempo).
En este caso los interruptores tienen que estar conectados en
paralelo, con lo que la corriente circula si o p o
q o ambas son verdaderas (interruptores cerrados).
Proposiciones más complejas darán lugar a circuitos
más complicados.
Conclusión
Las álgebras booleanas, estudiadas por
primera vez en detalle por George Boole, constituyen un
área de las matemáticas que ha pasado a ocupar
un lugar prominente con el advenimiento de la computadora
digital.Son usadas ampliamente en el diseño de
circuitos de distribución y computadoras, y sus
aplicaciones van en aumento en muchas otras áreas.Las compuertas lógicas son los
dispositivos electrónicos más sencillos que
existen, pero al mismo tiempo son los más utilizados
en la actualidad.
Enviado por:
Dervy Arturo Wilson Escobar
Autor:
Jose Manuel Claudio Hernández
Universidad Mariano Gálvez de Guatemala Sede
Retalhuleu
Ingeniería en sistemas
Primer ciclo
Lógica
Ing. Sergio Pineda
Fecha: 04-04-2009
Página anterior | Volver al principio del trabajo | Página siguiente |